package my.springboot3.service;

import my.springboot3.dto.Respond;
import my.springboot3.dto.entity.User;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 用户服务接口
 */
public interface UserService {

    /**
     * 根据用户ID查询用户
     * @param id 用户ID
     * @return 用户对象
     */
    User findById(int id);




    Respond<Void> register(User user);

    /**
     * 用户登录
     *
     * @param user 用户对象
     * @return
     */
    // Respond<?> login(User user);


    Respond<?> login(@RequestParam String username, @RequestParam String password);

    /**
     * 获取用户信息
     */
    Respond<?> userInfo();

    /**
     * 更新用户信息
     */
    Respond<Void> update(User user);

    /**
     * 更新用户密码
     * @param oldPwd 旧密码
     * @param newPwd 新密码
     * @param rePwd 重复密码
     * @return
     */
    void updatePwd(String oldPwd, String newPwd, String rePwd);

    void updatePic(String avatarUrl);
}
